// pages/chunqu/chunqiu.js
const app = getApp();

Page({
  data: {
    num: '',
    poemTitlle: '',
    poet: '',
    content: '',
    title: '',
    logined: false,
    poem: false,
    arr: [],
    length: 0,
    // 控制图片的变换
    likeflag: app.globalData.likeflag,
    // 点击次数，控制点赞和未点赞的切换
    index0: app.globalData.index0,
    // 控制图片的变换
    collectflag: app.globalData.collectflag,
    // 点击次数，控制收藏和未收藏的切换
    index1: app.globalData.index1,

    //史礼诗 及下面的文本框内容
    message: [{
        //   id: '0',
        //   text: "史",
        //   children: [{
        //     id: '0',
        //   }]
        // },
        // {
        // id: '0',
        // text: '史',
        // children: [{
        //   id: '0',
        // }]
      },
      // {
      //   id: '1',
      //   text: '艺',
      //   children: [{
      //     id: '1',
      //   }]
      // },
    ]
  },
  isToken: function (id, flag) {
    const token = wx.getStorageSync('token');
    if (token != '') {
      this.isLike(id, flag)
      this.isCollect(id, flag)
    }
  },
  //onLoad默认显示历史模块
  onLoad: function (options) {
    //登录默认显示历史文本
    wx.request({
      //请求历史介绍文本
      url: `${app.globalData.url}/history/${this.options.title}`,
      method: 'GET',
      dataType: 'json',
      header: {
        'content-Type': "text/json"
      },
      //请求成功setData
      success: res => {
        const historyContent = res.data[0].historyContent;
        const historyContentArr = historyContent.split('\r\n');
        const dynasty = res.data[0].dynasty;
        const historyImg = res.data[0].historyImg
        this.setData({
          id: res.data[0].historyId,
          content: historyContentArr,
          dynasty: dynasty,
          logined: true,
          poem: false,
          flag: 0,
          likeflag: false,
          collectflag: false,
          historyImg: "https://api.hiehie.top:6001/images/" + historyImg,
        })
        this.isToken(this.data.id, this.data.flag)
      },
      fail: err => {
        console.log(err);
      }
    })
  },

  // 判断是否在点赞列表里面的函数
  isLike: function (id, flag) {
    const token = wx.getStorageSync('token');
    wx.request({
      url: `${app.globalData.url}/good/id=${id}&flag=${flag}`,
      method: 'GET',
      dataType: 'json',
      header: {
        'Authorization': token
      },
      success: res => {
        if (res.data == 'Not in table') {
          app.globalData.likeflag = false,
            app.globalData.index0 = 0;
          this.setData({
            likeflag: app.globalData.likeflag,
            index0: app.globalData.index0
          })
        } else {
          app.globalData.likeflag = true,
            app.globalData.index0 = 1
          this.setData({
            likeflag: app.globalData.likeflag,
            index0: app.globalData.index0
          })
        }
      },
      fail: err => {
        console.log(err)
        app.globalData.likeflag = false
        this.setData({
          likeflag: app.globalData.likeflag
        })
      }
    })
  },
  // 点赞函数
  like: function (id, flag) {
    const token = wx.getStorageSync('token');
    wx.request({
      url: `${app.globalData.url}/good?id=${id}&flag=${flag}`,
      method: 'POST',
      dataType: 'json',
      header: {
        'Authorization': token
      },
      data: {
        id: id,
        flag: flag
      },
      //请求成功setData
      success: res => {
        console.log('post praise success!');
        app.globalData.likeflag = true,
          app.globalData.index0 = 1
        this.setData({
          likeflag: app.globalData.likeflag,
          index0: app.globalData.index0
        })
      },
      fail: err => {
        console.log(err)
      }

    })
  },
  // 取消点赞函数
  dislike: function (id, flag) {
    const token = wx.getStorageSync('token');
    wx.request({
      url: `${app.globalData.url}/good/id=${id}&flag=${flag}`,
      method: 'DELETE',
      dataType: 'json',
      header: {
        'Authorization': token
      },
      success: res => {
        console.log("delete praise sucess")
        app.globalData.likeflag = false,
          app.globalData.index0 = 0
        this.setData({
          likeflag: app.globalData.likeflag,
          index0: app.globalData.index0
        })
      },
      fail: err => {
        console.log(err)
      }
    })
  },
  //点击点赞图片切换
  open: function () {
    if (app.globalData.isLogin == false) {
      wx.showModal({
        title: '未登录',
        content: '您还没有登录哦，快去登录吧！',
        confirmText: '去登录',
        cancelText: '暂不登录',
        success: res => {
          if (res.confirm) {
            wx.switchTab({
              url: '/pages/myCenter/myCenter'
            })
          }
        }
      })
    } else {
      let id = this.data.id;
      let flag = this.data.flag;

      // 点赞函数
      if (app.globalData.index0 == 0) {
        this.like(id, flag);
      } else {
        // 取消点赞函数
        this.dislike(id, flag)
      }
    }

  },

  // 判断是否在收藏列表里面的函数
  isCollect: function (id, flag) {
    const token = wx.getStorageSync('token');
    wx.request({
      url: `${app.globalData.url}/collect/id=${id}&flag=${flag}`,
      method: 'GET',
      dataType: 'json',
      header: {
        'Authorization': token
      },
      success: res => {
        if (res.data == 'Not in table') {
          app.globalData.collectflag = false,
            app.globalData.index1 = 0
          this.setData({
            collectflag: app.globalData.collectflag,
            index1: app.globalData.index1
          })
        } else {
          app.globalData.collectflag = true,
            app.globalData.index1 = 1
          this.setData({
            collectflag: app.globalData.collectflag,
            index1: app.globalData.index1
          })
        }
      },
      fail: err => {
        console.log(err)
        app.globalData.collectflag = false,
          app.globalData.index1 = 0
        this.setData({
          collectflag: app.globalData.collectflag,
          index1: app.globalData.index1
        })
      }
    })
  },
  // 收藏函数
  collect: function (id, flag) {
    const token = wx.getStorageSync('token');
    wx.request({
      url: `${app.globalData.url}/collect?id=${id}&flag=${flag}`,
      method: 'POST',
      dataType: 'json',
      header: {
        'Authorization': token
      },
      data: {
        id: id,
        flag: flag
      },
      //请求成功setData
      success: res => {
        console.log(res);
        console.log('post success!');
        app.globalData.collectflag = true,
          app.globalData.index1 = 1
        this.setData({
          collectflag: app.globalData.collectflag,
          index1: app.globalData.index1
        })
      },
      fail: err => {
        console.log(err)
      }

    })
  },
  // 取消收藏函数
  discollect: function (id, flag) {
    const token = wx.getStorageSync('token');
    wx.request({
      url: `${app.globalData.url}/collect/id=${id}&flag=${flag}`,
      method: 'DELETE',
      dataType: 'json',
      header: {
        'Authorization': token
      },
      success: async res => {
        console.log('Delete collect sucess');
        app.globalData.collectflag = false,
          app.globalData.index1 = 0
        this.setData({
          collectflag: app.globalData.collectflag,
          index1: app.globalData.index1
        })

      },
      fail: err => {
        console.log(err)
      }
    })
  },
  //点击收藏图片切换
  open1: function (res) {
    if (app.globalData.isLogin == false) {
      wx.showModal({
        title: '未登录',
        content: '您还没有登录哦，快去登录吧！',
        confirmText: '去登录',
        cancelText: '暂不登录',
        success: res => {
          if (res.confirm) {
            wx.switchTab({
              url: '/pages/myCenter/myCenter'
            })
          }
        }
      })
    } else {
      let id = this.data.id;
      let flag = this.data.flag;
      // 收藏函数
      if (this.data.index1 == 0) {
        this.collect(id, flag);
      } else {
        // 取消收藏函数
        this.discollect(id, flag)
      }
    }
  },


  // //文本介绍内容切换
  // clickList: function (e) {
  //   let _this = this;
  //   if (e.currentTarget.id == 0) {
  //     wx.request({
  //       //请求历史介绍文本
  //       url: `${app.globalData.url}/history/${this.options.title}`,
  //       method: 'GET',
  //       dataType: 'json',
  //       header: {
  //         'content-Type': "text/json"
  //       },
  //       //请求成功setData
  //       success: res => {
  //         const historyContent = res.data[0].historyContent;
  //         const historyContentArr = historyContent.split('/r/n');
  //         const dynasty = res.data[0].dynasty;
  //         const historyImg = res.data[0].historyImg
  //         console.log(res.data[0])
  //         this.setData({
  //           id: res.data[0].historyId,
  //           content: historyContentArr,
  //           dynasty: dynasty,
  //           logined: true,
  //           poem: false,
  //           flag: 0,
  //           likeflag: false,
  //           collectflag: false,
  //           historyImg: "https://api.hiehie.top:6001/images/" + historyImg,
  //         })
  //         console.log(this.data.historyImg)
  //         this.isToken(this.data.id, 0)
  //       },
  //       fail: err => {
  //         console.log(err);
  //       }
  //     })
  //   }

    //      else if (e.currentTarget.id == 0) {
    //   wx.request({
    //     //请求礼仪介绍文本
    //     url: `${app.globalData.url}/manners/${this.options.title}`,
    //     method: 'GET',
    //     dataType: 'json',
    //     header: {
    //       'content-Type': "text/json"
    //     },
    //     //请求成功setData
    //     success: res => {
    //       const mannersContent = res.data[0].mannersContent;
    //       const mannersContentArr = mannersContent.split('/r/n');
    //       const dynasty = res.data[0].dynasty;
    //       const mannersImg = res.data[0].mannersImg
    //       this.setData({
    //         id: res.data[0].mannersId,
    //         content: mannersContentArr,
    //         dynasty: dynasty,
    //         mannersImg: "https://api.hiehie.top:6001/images/" + mannersImg,
    //         logined: true,
    //         poem: false,
    //         // likeflag: false,
    //         flag: 1,
    //         likeflag: false,
    //         collectflag: false

    //       })
    //     },
    //     fail: err => {
    //       console.log(err);
    //     }
    //   })
    //   this.isToken(this.data.id, 1)
  //   else if (e.currentTarget.id == 1) {
  //     wx.request({
  //       //请求诗句介绍文本
  //       url: `${app.globalData.url}/poem/${this.options.title}`,
  //       method: 'GET',
  //       dataType: 'json',
  //       header: {
  //         'content-Type': "text/json"
  //       },
  //       //请求成功setData
  //       success: res => {
  //         if (res.data.length != 0) {
  //           this.setData({
  //             arr: res.data,
  //             // 将获取到的数据付给arr
  //             id: res.data[0].poemId,
  //             logined: false,
  //             poem: true,
  //             flag: 2,
  //           })
  //           // 从数组中取出数据赋值给content
  //           this.setData({
  //             poemTitle: _this.data.arr[0].poemTitle,
  //             poet: _this.data.arr[0].poet,
  //             content: _this.data.arr[0].poemContent,
  //             length: _this.data.arr.length,
  //           })
  //         } else {
  //           this.setData({
  //             // id:  res.data[0].poemId,//春秋没有诗句 id为空
  //             content: "这还没有诗句哦，去其他朝代看看",
  //             logined: false,
  //             poem: true,
  //             // likeflag: false,
  //             // collectflag: false
  //           })
  //         }
  //         console.log(res.data)
  //       },
  //       fail: err => {
  //         console.log(err);
  //       }
  //     })
  //     this.isToken(this.data.id, 2)
  //   }
  // },

  // 左边小三角绑定的事件
  leftClick: function () {
    let _this = this;
    // app.globalData.index整体的变量，控制左右诗词的显示
    if (app.globalData.index > 0) {
      this.setData({
        content: _this.data.arr[app.globalData.index - 1].poemContent,
        poemTitle: _this.data.arr[app.globalData.index - 1].poemTitle,
        poet: _this.data.arr[app.globalData.index - 1].poet,
        id: _this.data.arr[app.globalData.index - 1].poemId,
        likeflag: false,
        collectflag: false
      })
      this.isToken(this.data.id, 2)
      // 获取当前诗词的索引值
      _this.data.arr.map((item, index) => {
        if (_this.data.content == item.poemContent) {
          app.globalData.index = index;
        }
      })
    } else if (app.globalData.index == 0) {
      this.setData({
        content: _this.data.arr[_this.data.length - 1].poemContent,
        poemTitle: _this.data.arr[_this.data.length - 1].poemTitle,
        poet: _this.data.arr[_this.data.length - 1].poet,
        id: _this.data.arr[this.data.length - 1].poemId,
        likeflag: false,
        collectflag: false
      })
      // 获取当前诗词的索引值
      _this.data.arr.map((item, index) => {
        if (_this.data.content == item.poemContent) {
          app.globalData.index = index;
        }
      })
    }
    this.isToken(this.data.id, 2)
  },

  // 右边小三角绑定的事件
  rightClick: function () {
    let _this = this;
    // app.globalData.index整体的变量，控制左右诗词的显示
    if (app.globalData.index < _this.data.length - 1) {
      this.setData({
        content: _this.data.arr[app.globalData.index + 1].poemContent,
        poemTitle: _this.data.arr[app.globalData.index + 1].poemTitle,
        poet: _this.data.arr[app.globalData.index + 1].poet,
        id: _this.data.arr[app.globalData.index + 1].poemId
      })
      this.isToken(this.data.id, 2)
      // 获取当前诗词的索引值
      _this.data.arr.map((item, index) => {
        if (_this.data.content == item.poemContent) {
          app.globalData.index = index;
        }
      })
    } else if (app.globalData.index == _this.data.length - 1) {
      this.setData({
        content: _this.data.arr[0].poemContent,
        poemTitle: _this.data.arr[0].poemTitle,
        poet: _this.data.arr[0].poet,
        id: _this.data.arr[0].poemId,
      })
      this.isToken(this.data.id, 2)
      // 获取当前诗词的索引值
      _this.data.arr.map((item, index) => {
        if (_this.data.content == item.poemContent) {
          app.globalData.index = index;
        }
      })
    }
  },
})